A typical communications system comprises nodes, such as for example a Mobile Node (MN) corresponding via a network node to a Correspondent Node (CN). The network node may be located in a Radio Access Network (RAN) or a Core Network (CN). The communications system may be a wireline or wireless system.
The mobile node may be referred to as a user equipment and is a mobile node by which a subscriber may access services offered by an operator's core network and services outside operator's network to which the operator's RAN and core network provide access. The mobile node may be for example a communication device such as mobile telephone, cellular telephone, smart phone, tablet computer or laptop with wireless capability. The mobile node may be portable, pocket-storable, hand-held, computer-comprised, or vehicle-mounted mobile device, enabled to communicate voice and/or data, via the RAN, with another entity, such as another mobile node or a server.
The communications system may be a cellular network covering a geographical area which is divided into cell areas. Each cell area is served by a base station, e.g. a Radio Base Station (RBS), which sometimes may be referred to as e.g. evolved Node B (eNB), eNodeB, NodeB, B node, or Base Transceiver Station (BTS), depending on the technology and terminology used. The base station(s) communicate over the air interface operating on radio frequencies with the mobile node(s) within range of the base station.
In some versions of the radio access network, several base stations are typically connected, e.g. by landlines or microwave, to a Radio Network Controller (RNC), as in the third Generation (3G) of a mobile communication system, i.e. Wideband Code Division Multiple Access (WCDMA). The radio network controller supervises and coordinates various activities of the plural base stations connected thereto. In the second Generation (2G) of a mobile communication system, i.e. Global System for Mobile Communications (GSM), the base stations are connected to a Base Station Controller (BSC). The network controllers are typically connected to one or more core networks.
The network node may be for example the eNB. The correspondent node may be any node in the communication system capable of communicating with the mobile node over a TCP/Internet Protocol (IP) network. The correspondent node may be fixed or mobile. It may be a mail server, an instant massager server, a social network website, a game server, an IMS node in an IMS network etc.
The TCP and the IP are protocols of the Internet Protocol Suite (IPS). The Internet Protocol Suite is therefore also referred to as TCP/IP. The IP protocol deals with packets and the TCP is a protocol which is widely used to provide high reliable communication between hosts in an IP network. Protocols such as the Hypertext Transfer Protocol (HTTP), File Transfer Protocol (FTP), Simple Mail Transfer Protocol (SMTP), Network File System (NFS), Telnet and Secure Shell (SSH) etc. are all based on the TCP transport protocol to communicate in both a wireline network and a wireless network.
In addition to good reliability, the TCP also has a good congestion control mechanism via a window mechanism. In a connection between a client and a server, the client tells the server the amount of data it is willing to receive at one time from the server. This amount of data may be referred to as window size. Likewise, the server tells the client the amount of data it is willing to take from the client at one time. This amount of data may also be referred to as window size. A TCP receiver governs the amount of data sent by a TCP sender. The receiver returns a window update to the sender with every ACKnowledgement (ACK) indicating an allowed number of octets that the sender may transmit before receiving further permission. The ACK is a flag used in the TCP to acknowledge receipt of a packet.
In a mobile network, a mobile node usually uses TCP to surf internet, e.g. HTTP, read emails, e.g. SMTP, access social networks such as twitter, facebook etc., and online chatting, e.g. Session Initiation Protocol (SIP) or other application protocols, MSN, Skype etc. Off course, User Datagram Protocol (UDP) applications are increasing year after year with the booming of video and voice based applications. However, TCP is still the transport protocol used by the majority in the Packet Core Network (PCN) by the mobile node. It occupies nearly more than 80% of the traffic.
The third Generation Partnership Project (3GPP) Long Term Evolution (LTE) is a standard for mobile communication and may also be referred to as fourth Generation (4G). LTE comprises the Evolved Packet Core (EPC) and Evolved Universal Mobile Telecommunications System (UMTS) Terrestrial Radio Access Network (E-UTRAN). The EPC comprises several entities, elements, nodes or gateways, such as a Mobility Management Entity (MME), a Home Subscriber Server (HSS), a Serving Gateway (SGW), a Packet Data Network Gateway (PGW) and a Policy and Charging Rules Function (PCRF) Server.
The MME is responsible for of all control plane functions related to subscriber and session management. The network comprises three parts, also referred to as planes. The control plane carries control information in the network. The control plane carries control information, also referred to as signaling. The user plane carries the network's users traffic. The management plane carries the operations and administration traffic required for network management.
The HSS is a central repository of all subscriber-specific authorizations and service profiles and preferences for an Internet Protocol Multimedia Subsystem (IMS) network.
The SGW is a termination point of a packet data interface towards E-UTRAN. When mobile nodes move across the eNodeB in E-UTRAN, the SGW serves as a local mobility anchor. In other words, data packets are routed through the SGW for intra E-UTRAN mobility and mobility with other 3GPP technologies, such as 2G/GSM and 3G/UMTS.
The PGW is a termination point of the packet data interface towards the PDN.
The PCRF manages the service policy and sends Quality of Service (QoS) information for each mobile node session and accounting rule information.
The General Packet Radio Service (GPRS) Tunneling Protocol (GTP) is a group of communications protocols used to carry http://en.wikipedia.org/wiki/General_Packet_Radio_Service GPRS within for example GSM, UMTS and LTE networks. The GTP may be classified into separate sub protocols, GTP-Control (GTP-C), GTP-User plane (GTP-U) and GTP' according to their usage. The GTP-C is the control section of the GTP, and is used for signaling messages between a Serving GPRS Support Node (SGSN) and the MME, between the SGSN and the SGW, between the SGW and the PGW, and between MMEs. GTP-C comprises a GTP-C header.
A GTP-U tunnel is used to carry transport packet data units (T-PDU) and signaling messages between GTP-U Tunnel Endpoints. GTP-U comprises a GTP-U header and GTP-U payload. TCP traffic is comprised in a T-PDU of the GTP-U payload. The PDU represents a unit of data specified in the protocol of a given layer in the OSI model, which comprises protocol control information and user data. The T-PDU is the IP data transferred between the mobile node and the correspondent node. The T-PDU goes through the packet switched network via the GTP-U tunnel, which is also over an IP/UDP network.
In a LTE 4G network, the eNodeB, the MME, the PGW and the PCRF negotiate bearer QoS with control plane signaling, such as GTP-C and Diameter. Diameter is an authentication, authorization and accounting protocol. Diameter is an alternative to a Remote Authentication Dial In User Service (RADIUS) protocol.
Data transmitted on IP networks is divided into smaller units called “packets”. A packet is the smallest unit of data that is transmitted and routed in an IP network, and the technology that inspects those packets on a deeper level is called Deep Packet Inspection (DPI). DPI is a network technology which inspects the content portion of traffic flowing through the network in reartime. DPI performs packet filtering by examining the data part, and possibly also the header, of the packet as it passes an inspection point, searching for protocol non-compliance, viruses, spam, intrusions or a predefined criteria to decide if the packet may pass the inspection point or if it needs to be routed to a different destination, or for the purpose of collecting statistical information. DPI may be implemented in an existing node in the network, such the GGSN or the PGW, or in a dedicated DPI node.
Quality of service (QoS) is associated with a node's ability to provide different priority to different applications, users, or data flows, or to guarantee a certain level of performance to a data flow. For example, a required bit rate, delay, jitter, packet dropping probability and/or bit error rate may be guaranteed. QoS offers a traffic regulation function referred to as policing. When a policing function identifies traffic violations it typically drops traffic. Traffic drop may also be referred to as traffic loss, packet loss or packet drop, and comprises loss of one or more data packets and occurs when the one or more packets travelling across the network fail to reach their destination. The term traffic drop will be used in the following.
QoS parameters are downloaded from the MME to the SGW to do policing on a Packet Data Protocol (PDP) bearer level. QoS parameters are the parameters that control the priority, reliability, speed and amount of traffic sending over the network. Typical QoS parameters may be throughput, bandwidth, transit delay, jitter, loss ratio, and error rate. The PGW and the eNodeB also perform policing based on a negotiated QoS. The objective of policing is to control the conformance of PDP bearer flows to their negotiated Maximum Bit Rate (MBR) QoS parameters. Policing only monitors the sending rate of all DownLink (DL) user plane traffic. UpLink (UL) traffic is not subject to policing. DL is traffic from the correspondent node to the mobile node, and UL is traffic from the mobile node to the correspondent node.
PDP is a network protocol used by packet switched networks to communicate with GPRS networks. A PDP context is the packet data connection or link between the mobile node and the correspondent node, i.e. a Public Data Network (PDN), that allows them to communicate with each other, e.g. exchange IP packets. A PDP context lasts only for the duration of a specific connection, i.e. a data session. The mobile node may have more than one PDP context activated at a time. The PDP context defines aspects such as routing, QoS, security, billing etc.
In UMTS 3G networks, the RNC, the SGSN, Gateway GPRS Support Node (GGSN) and PCRF negotiate PDP QoS with control plane signaling, such as GTP-C and Diameter, to get the MBR QoS parameters per PDP. It is not only the SGSN which performs policing functionality on the downlink user plane traffic, but also the GGSN and the RNC perform a policing functionality. The GGSN provides the user plane, forwards and routes packets. It is a gateway to external packet networks such as Internet, IMS, internal IP domain etc. A Gi interface is an IP based interface between the GGSN and the PDN either directly to the Internet or through a WAP gateway.
Policing algorithms may be implemented on a token bucket. It is a simple but efficient algorithm to perform policing. A token bucket is used to manage a device that regulates the data in a flow by checking that data transmissions conform to defined limits on bandwidth and variations in the traffic flow. When a data packet is to be checked for conformance to the defined limits, the bucket is inspected to see if it comprises sufficient tokens at that time. If so, the appropriate number of tokens, e.g. equivalent to the length of the packet in bytes, is removed from the bucket, and the data packet is passed. If there are insufficient tokens in the bucket the data packet does not conform to the defined limits, and the contents of the bucket are not changed. Non-conformant packets may be dropped.
TCP is the major traffic type in the PCN, and therefore is policing mainly performed on this type of traffic.
Considering a mobile node in a PCN network which is communicating with a correspondent node in the Internet via the TCP protocol, such as reading emails. If the subscriber traffic flows exceed an agreed service threshold, e.g. MBR, then a node in the PCN will drop packets using the policing functionality. The maximum bit rate describes the agreed upper sending rate for a PDP context, and is a value in the negotiated set of QoS parameters. Due to that the packets are dropped, more and more TCP packets are to be retransmitted over the network, which may cause network congestion, especially in the busy hours/days. Also, due to that an ACK with a window size update is sent from receiver, i.e. the mobile node, to the sender correspondent node, is slow; more packets may be dropped in the downlink traffic.
Excessive traffic over the PDP may be mostly caused by a too large window size in the ACK sent from a receiver, e.g. mobile node, to the sender, e.g. the correspondent node, in a short period of time. The consequences are that the sender aggressively sends excessive data to the receiver immediately until the receiver notifies the sender with another window size ACK.
A wireless communications network has a narrower bandwidth compared to Wireline Internet and a PCN network. The mobile node is not aware of the unmatched network speed. When the mobile node acts as a TCP receiver, it may advertise a larger window size to the sender, which may cause e.g. GPRS Supporting (GSN) nodes to do policing on this TCP traffic. This may cause network congestion, traffic drop, retransmission and packet delay problems.
Policing traffic drop will cause TCP segment re-transmission over the network from the correspondent node to the mobile node. This will cause additional packet core network overhead.